Internet cloud based video streaming has become a very popular and effective way to provide information and content to end users from a variety of sources. Unfortunately, the setup for Internet based camera streaming is a relatively time consuming process. There are usually multiple steps, such as discovering a network address of a camera, setting up the network (for example, a TCP handshake), and performing streaming negotiations or stream transcoding. Specifically, some video transport protocols require a video chunk to be prefetched on a relay server before it can be sent to a viewer (for example, HTTP live streaming). This can take a significant amount of time, for example, 15 seconds. This usually requires that the end user must wait for 15 seconds for actual video data arriving at his/her laptop or mobile application. Although 15 seconds is not a lot of time, many users view such delays as indicating less than ideal service performance.
Alternately, some of the known remote video transmission services stream video continuously and, therefore, consume valuable bandwidth associated with a site. This causes other Internet services to be sluggish or unresponsive in, for example, home installations.
One of the advantages of continuous streaming is that, when an end user logs in from a remote location, the video streams are “live,” and the response is faster than other systems that only stream upon request in order to conserve bandwidth.